Çalışma Soruları 1) İkili ağaç üzerinde en küçük elamanı bulup çağırana adresini gönderen enKucukDugum() adlı bir C fonksiyonu tasarlayınız ve kodlayınız. Fonksiyonun formal parametresi ağacın kökünü gösteren işaretçi değişkendir. 2) Düğümlerinde tamsayı değerlerin tutulduğu bir ikili ağaca sırasıyla 8, 12, 6, 5, 17, 2, 1, 4, 12 gelmektedir. Ağacı çiziniz; ağaç dengeli ağaç mıdır? Değil ise, dengeli olması için sayıları hangi sırada gelmelidir. 3) Bir ağacı bellekte tutmak için birisi indis-bağıntısı, diğeri düğüm-bağlantısı olarak adlandırılan iki temel yöntem vardır. Bu yöntemin birbirlerine göre olumlu ve olumsuz özelliklerini (alan maliyeti, yürütme zamanı maliyetleri vs. ) karşılaştırınız. 4) Veri kısmında Türkçe alfabedeki karakterlerin tutulduğu bir ağaç oluşturulmak istenmektedir. Alfabedeki harf sayısına ek olarak 10 tane noktalama karakteri (.',:;! vs. gibi) olarak kullanılmaktadır. Büyük ve küçük harfler ayrı ayrı değerlendirilecektir. Bu verilere göre ağacın bellekte düğüm-bağlantısı yöntemine tutulması istenmektedir. Her çocuk için bir bağlantı bilgisinin kullanıldığı çoklu-bağlantı ve iki-bağlantısı bilgisine göre ağaç tutulması yöntemleri için ayrı ayrı bellek gereksinimini (alan maliyetini) ve arama için gerekli zaman maliyetini hesaplayınız. Hangisini seçersiniz? Nedenlerini de vererek açıklayınız. 5) Aşağıda verilen bağıntı ağaçlarına karşılık düşen denklemleri iç-takı (infix), ön-takı (prefix) ve son-takı (postfix) şeklinde yazınız. 6) İçerisinde 8 tane karakter bulunan bir alfabedeki karakterlere Huffman kodlama ağacı kullanılarak kodlar verilmektedir. Karakterlerin kullanma olasılığı sırasıyla Fibonacci serisinin ilk 8 elemanının değerleri olarak verilirse ilgili Huffman kodlama ağacını oluşturunuz ve herbir karaktere verilecek kodları belirleyiniz |